1. Field of the Invention
The present invention relates to a workflow system for defining, performing, and controlling the procedure of business works and the flow of the information on the business works, and more particularly, to a workflow system having a function of rearranging the workflow according to the progress of the work.
2. Description of the Related Art
What is called, a workflow system for defining, performing, and controlling the procedure of a series of business works and the flow of the information on the business works among a plurality of workers is used in order to realize the good management of the business works in accordance with the adequate procedure of the works. Provided that a business work is broken into a plurality of unit tasks, a definition of a workflow in a workflow system generally includes the execution order of each task, a person in charge of each task, and the data form passed between tasks. Hereinafter, the whole business works to be performed and controlled based on the workflow is referred to as a workflow operation.
For example, the workflow operation such as handling the slip of traveling expenses may include a first task of issuing a traveling slip, a second task of approving the slip, a third task of reserving tickets or hotels, a fourth task of making the settlement application of the traveling expenses, and a fifth task of accounting according to the settlement application. These tasks are executed in this order. Of these tasks, the first and fourth tasks are the duty of the person who traveled on business, the second task is the duty of a superior of the traveled person, the third task is the duty of a secretary, and the fifth task is the duty of an accountant. The data passed among each task is of the traveling slip.
In the above-mentioned example of the traveling slip, each task is executed one after another. Besides, it is possible to define a conditional branch for executing a predetermined task under a given condition or parallel processing for executing a plurality of tasks in parallel.
Further, the priority may be given to the business works (unit tasks or works with combination of some unit tasks) included in the workflow operation. The priority means the parameter for indicating the priority task among a plurality of tasks being executed. Deadline may be defined in these works. The deadline in every task as well as the final deadline of the workflow operation itself may be defined.
A workflow system for performing works by priority depending on their content is disclosed in, for example, Japanese Patent Publication Laid-Open (Kokai) No. Heisei 8-101862, "Workflow Management Method and System" (Article 1). The Article 1 discloses a workflow system in which, when enormous works are in wait state at a given point of the work, if a new job having arrived newly is a circulation work, the circulation work can proceed into a further advanced process by the priority without waiting for the completion of the circulation work at this point of the work, thereby preventing from delay of works.
FIG. 12 is a block diagram showing the constitution of the conventional workflow system. Workflow clients 1201 are respectively assigned to individual workers, so as to notify the content of a task to each worker and manage the schedule of a task. A workflow server 1200 holds the definition of a workflow operation, controls the progress of the workflow operation, and notifies the occurrence of a task to each workflow client 1201. The workflow server 1200 and the workflow client 1201 may be realized by a work station controlled by a computer program or the other computer system, and the communication therebetween may be realized by various communication means between computer programs. The workflow server 1200 and each workflow client 1201 may be operated on the same hardware, or they may be operated on hardware different from each other. Generally, it is not necessary that the workflow server 1200 and each work flow client 1201 are operating on the respective same hardware continuously from the start of the operation to the end of the operation.
FIG. 13 is an example of a chart expressing the flow of a task in a workflow operation. The illustrated chart shows a plurality of nodes 1301 connected by a plurality of arcs 1302. Each node 1301 represents a worker and a unit task to be done by the worker and each arc 1302 represents the procedure of the work. A method of defining such a chart is disclosed in, for example, Japanese Patent Publication Laid-Open (Kokai) No. Heisei 8-171521, "Method for Constituting a Business Process Support System and Its Apparatus" (Article 2).
The Article 2 discloses a user interface screen for describing a workflow process in the combination of the steps of: document circulation from a person to another person; queuing of a plurality of documents on the way to circulation; division of the queued documents; broadcast of the document to a plurality of circulation destinations after copying the document; collection of the distributed documents by the broadcast in a bundle; and a branch for selecting a circulation path according to the processing result of a document from a worker, controlling the document transfer based on the information on the workflow process, and displaying the components of the workflow process with icons, displaying the transfer of a document between the components with an arrow interconnecting the icons, and further displaying a document to be circulated in the workflow process with an icon, so that the icon indicating the document may be correspondent to the arrow indicating the document transfer between the components.
As examples of the conventional workflow system of this kind, there exist the products such as "Staffware", "ActionWorkflow", and "Regatta".
The outline of the "ActionWorkflow" is described in the report "The ActionWorkflow Approach to Workflow Management Technology" (Article 3) (pp. 391-pp. 404) of the magazine "The Information Society" Vol. 9. The outline of the "Regatta" is described in the report "Visual Support for Reengineering Work Processes" (Article 4) (pp. 130-pp. 141) of the reports published in the "Conference on Organizational Computing Systems" held in Milpitas, Calif., U.S.A. from November 1 to Nov. 4, 1993.
By the way, there is a type of workflow system having a function to deal with a special case when the work does not proceed in time for the deadline initially scheduled. For example, in the above-mentioned "Staffware", a user interface screen for specifying the deadline (time limit) of each worker and action when exceeding the deadline, is prepared and one part of the specifications is published in the home page on the internet http://www.unisys.co.jp/product.sub.-- info/staffware/pattern2. htm (hereinafter, referred to as Article 5) as of Oct. 31, 1996. According to the Article 5, however, this function is able to define only the action to be applied in exceeding the deadline, but unable to change the deadline flexibly and take measures beforehand in anticipation of exceeding the deadline.
As an example of the conventional workflow system which performs a necessary amendment during the operation of a workflow, there is a system disclosed in Japanese Patent Publication (Kokai) No. Heisei 7-334572, "Information Processing System" (hereinafter, referred to as Article 6). The Article 6 describes a system which stops the operating workflow when receiving an amendment instruction of the workflow processes during the operation of the workflow, modifies the workflow according to the amendment instruction, and restarts the work from the modified process according to the modified workflow.
Further, as means for altering the workflow operation (rearrangement) in anticipation of troubles in the workflow operation, there is a technique disclosed in Japanese Patent Publication Laid-Open (Kokai) No. Heisei 8-190584, "Workflow System" (hereinafter, referred to as Article 7). FIG. 14 is a block diagram showing the constitution of the workflow system disclosed in the Article 7, FIG. 15 is a block diagram showing the constitution of a workflow estimation/prediction unit 1450, and FIG. 16 is a block diagram showing the constitution of a measure examination unit 1454. The Article 7 at page 10 describes some kinds of trials to rearrangement of a workflow and its application sequence as an example of knowledge provided by a knowledge providing unit 1603 as illustrated in FIG. 16. As a method of workflow rearrangement, described is, by way of example, a method for raising the priority, changing the deadline, and designating a substitute.
The above-mentioned conventional workflow system, however, has such a defect that it cannot meet various requests relative to the rearrangement of a workflow flexibly. Possibly, there may be some workflow operations in which the priority is given to the schedule of a manager who gives a final settlement and the workflow schedule until submission of a document to the manager would be advanced as much as possible. At the same time, there may be other workflow operations in which the delay of the schedule doesn't matter. A method for meeting these various requests is not disclosed even in the knowledge providing means of the workflow system in the Article 7. In other words, the conventional workflow system can't rearrange the workflow flexibly according to the individual requests.
In the conventional workflow systems, a designer of workflow definition can't specify the policy of workflow rearrangement, and the rearrangement in accordance with the intention of the definition designer has been impossible. In order to meet various requests about rearrangement as mentioned above, it is necessary to specify the rearrangement policy for every worker in detail in case of exceeding the deadline or in case of predicting that the deadline may be exceeded. Such a specifying method, however, is not described even in the workflow definition means in the workflow system in the Article 7.